Method and apparatus for establishing chat group

ABSTRACT

A method including: receiving, from a first terminal, a request for establishing a chat group without receiving an identifier of an existing social network contact; monitoring incoming requests for additional users to join the first chat group; while monitoring, detecting a request from a second terminal to obtain information of other terminals located around the second terminal; in accordance with the request from the second terminal and in accordance with a determination that the second terminal and the first terminal are located within a preset distance, requesting authentication information corresponding to the first chat group; receiving the authentication information from the second terminal, wherein the authentication information is obtained by the second user independently of the server of the social network platform; and in accordance with a determination that the authentication information is correct, establishing the first chat group including the first user and the second user.

PRIORITY CLAIM AND RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 13/994,081, filed Jun. 13, 2013, entitled “METHODAND APPARATUS FOR ESTABLISHING CHAT GROUP”, which is a continuation ofPCT Application No. PCT/CN2013/074988, filed Apr. 28, 2013, entitled“METHOD AND APPARATUS FOR ESTABLISHING CHAT GROUP”, both of which arehereby incorporated by reference in their entirety.

FIELD OF THE INVENTION

The present invention relates to mobile communication technologies, moreparticularly, to a method and apparatus for establishing a chat group.

BACKGROUND OF THE INVENTION

Along with the developments of mobile communication technologies,functions of mobile terminals become more and more powerful. By means ofInstant Messaging (IM) tools in the mobile terminals, users may receiveand send texts, pictures, and chat with other network users etc. As anInstant Messaging (IM) tools, WeChat have been accepted by more and moremobile communication users. Users of the WeChat may establish a chatgroup to communicate with friends in real time.

When establishing a chat group by using the WeChat, the user has tofirstly select group members from contacts of the user, and then theuser may initiate the chat group including the user and the selectedgroup members. If the user needs to invite WeChat users which are notthe contacts of the user, the user has to firstly add the WeChat usersas contacts one by one, selects each group member from all contacts, andinitiate the chat group finally.

As can be seen, the conventional operations performed when establishingthe chat group is complicated. Especially, when the users of WeChatclients in the chat group to be established are together, e.g. when theuser met his friends, it is more inconvenient for the user to establisha chat group for the friends around him.

In summary, the conventional solutions at least have the followingdefects: the operations for establishing the chat group is complicated,the procedure for establishing the chat group inconvenient for the user,and experiences of the user is not good especially when the user wantsto invite friends around him to the group chat.

SUMMARY OF THE INVENTION

In view of the above, the embodiments of the present invention provide amethod and apparatus for establishing a chat group, so as to simplifythe operations performed when establishing the chat group and improvethe experiences of the user.

Technical solutions are implemented as following:

A method for establishing a chat group comprises:

-   -   obtaining, by a server, an identifier of a user of a first        client terminal, an identifier of a chat group to be established        and a geographic position of the first terminal after receiving        a request for establishing a chat group from a first client        terminal;    -   establishing, by the server, a chat group entry and storing the        entry on the server according to the identifier of the user of        the first client terminal, the identifier of a chat group to be        established and a geographic position of the first terminal;    -   selecting, by the server, at least one second client terminal        within a predetermined geographic scope;    -   sending automatically an invitation message to join the chat        group to the at least one second client terminal;    -   receiving, by the server and from the second client terminal,        authentication information and performing authentication;    -   if the authentication is successful, allowing access of the        second user to the chat group, and sending information of the        second user to the first client terminal;    -   finishing, by the server, establishing the chat group when a        preset finish condition is met.

An apparatus for establishing a chat group comprises: an interface and aprocessor, wherein the processor comprises an obtaining module, anestablishing module, a selecting module, an adding module and afinishing module; and

-   -   the interface is to receive a request for establishing a chat        group sent by a first client terminal, the request for        establishing the chat group comprises an identifier of the user        of the first client terminal, an identifier of a chat group to        be established; the interface is to sending automatically an        invitation message to join the chat group to the at least one        second client terminal after a chat group entry is established        by the establishing module of the processor; to receive        authentication information from the second client terminal; and        to send information of the second client terminal to the first        client terminal after the second client terminal is added into        the chat group;    -   the obtaining module is to obtain the identifier of the user of        the first client terminal, the identifier of a chat group to be        established and a geographic position of the first terminal,        according to the request for establishing the chat group;    -   the establishing module is to establish the chat group entry        according to the identifier of the user of the first client        terminal, the identifier of a chat group to be established and        the geographic position of the first terminal;        the selecting module is to select at least one second client        terminals within a predetermined geographic scope;        the adding module is to perform authentication; if the        authentication is successful, allow access of the second user to        the chat group;    -   the finishing module is to finish establishing the chat group        when a preset condition is met.

A non-transitory computer readable medium storing instructions thereonfor establishing a chat group, the instructions when executed by aprocessor cause the processor to perform the above-mentioned methods.

It can be seen from the above solutions, according to the embodiments ofthe present invention, the first client terminal does not need to addthe friend as the contact firstly and then select the friend from allcontacts. Instead, the first client terminal sends the request forestablishing the chat group, more than one second client terminals inthe predetermined geographic scope around the location of the firstclient may join the chat group, no matter whether the second client isone of contacts of the first client. The operations performed by thefirst client terminal that initiates the group chat are simplified, itis much convenient for the first client terminal to establish the chatgroup, and experiences of the user are improved.

BRIEF DESCRIPTION OF THE DRAWINGS

Specific examples of the present invention will be illustrated in detailhereinafter with reference to the accompanying drawings, so that theabove and other characteristics and merits of the present invention areclearer for those skilled in the art.

FIG. 1 is a schematic flowchart illustrating a method for establishing achat group according to an embodiment of the present invention.

FIG. 2 is a schematic diagram illustrating a structure of a system forestablishing a chat group according to an embodiment of the presentinvention.

FIG. 3 is a schematic flowchart illustrating a method for establishing achat group according to another embodiment of the present invention.

FIG. 4 is a schematic diagram illustrating an interface on a firstclient terminal when a chat group is initiated according to anembodiment of the present invention.

FIG. 5 is a schematic diagram illustrating an interface on a firstclient terminal when the first client terminal is added to a chat groupaccording to an embodiment of the present invention.

FIG. 6 is a schematic diagram illustrating an interface on a secondclient terminal when a second client terminal requests to obtaininformation of client terminals located around according to anembodiment of the present invention.

FIG. 7 is a schematic diagram illustrating an interface on a secondclient terminal when a user of the second client terminal is request toinput authentication information according to an embodiment of thepresent invention.

FIG. 8 is a schematic diagram illustrating an interface on a firstclient terminal after a second client terminal is added to a chat groupaccording to an embodiment of the present invention.

FIG. 9 is a schematic diagram illustrating an apparatus for establishinga chat group according to an embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The embodiments of the present invention provide a method and apparatusfor establishing a chat group, so as to simplify the operationsperformed when establishing the chat group and improve the experiencesof the user.

In order to make the object, technical solution and merits of thepresent invention clearer, the present invention will be illustrated indetail hereinafter with reference to the accompanying drawings andspecific examples.

In the embodiments of the present invention, the client terminal thatinitiates the chat group is called as the first client terminal, and theclient terminal that is invited to the chat group is called as thesecond client terminal. One client terminal may be regarded as the firstclient terminal for one chat group or may be regarded as the secondclient terminal for another chat group.

FIG. 1 is a schematic flowchart illustrating a method for establishing achat group according to an embodiment of the present invention. As shownin FIG. 1, the method includes the following blocks.

In block 101, a server receives a request for establishing a chat groupfrom a first client terminal. The request for establishing the chatgroup at least includes an identifier of the user of the first clientterminal, an identifier of a chat group to be established.

In embodiments of the present invention, the first client terminal mayobtain the identifier of the user when the user logs on the first clientterminal. The user of the first client terminal may input the identifierof the chat group via the first client terminal, and then the firstclient terminal sends the identifier of the user and the identifier ofthe chat group to the server.

In an embodiment, the first client terminal may obtain a geographicposition of the first client terminal before block 101 is performed, andthe request for establishing a chat group may also include thegeographic position of the first client terminal.

If the first client terminal does not obtain a geographic position ofthe first client terminal before block 101 is performed, the request forestablishing a chat group only includes the identifier of the user ofthe first client terminal and the identifier of a chat group to beestablished.

In block 102, the server obtains the identifier of the user of the firstclient terminal, the identifier of a chat group to be established andthe geographic position of the first terminal, according to the requestfor establishing the chat group.

In this block, when the request for establishing a chat group includesthe identifier of the user of the first client terminal, the identifierof a chat group to be established and the geographic position of thefirst terminal, the server directly obtains the identifier of the userof the first client terminal, the identifier of a chat group to beestablished and a geographic position of the first terminal from therequest for establishing a chat group.

When the request for establishing a chat group merely includes theidentifier of the user of the first client terminal and the identifierof a chat group to be established, the server directly obtains theidentifier of the user of the first client terminal and the identifierof a chat group to be established from the request for establishing achat group, and obtains the geographic position of the first terminal bylocating the first client terminal.

For example, the server may obtain geographic information of the firstclient terminal, e.g. Global Positioning System (GPS) information of thefirst client terminal, information of a cell of the first clientterminal, or IP information of the first client terminal, and determinethe geographic position of the first terminal according to the obtainedgeographic information.

In block 103, the server establishes a chat group entry according to theidentifier of the user of the first client terminal, the identifier of achat group to be established and a geographic position of the firstterminal, stores the entry on the server and adds the first clientterminal is to the chat group.

In block 104, the server selects at least one second client terminalwithin a predetermined geographic scope, and sends automatically aninvitation message to join the chat group to the second client terminal.

In an embodiment, the server searches for client terminals around thefirst client terminal, and selects the client terminal as the secondclient terminal when the distance between the client terminal and thefirst client terminal is shorter than a preset value.

In another embodiment, the server searches for client terminals aroundthe first client terminal and determines whether the client terminalsaround the first client terminal request to obtain information of clientterminals located around, and selects the client terminal as the secondclient terminal when the distance between the client terminal and thefirst client terminal is shorter than the preset value and the clientterminal requests to obtain information of other client terminalslocated around.

As can be seen, in embodiments of the present invention, the secondclient terminal receiving the invitation message to join the chat groupare selected according to the geographic locations and the second clientterminal may be not one of the contacts of the first client terminal, sothat the first client terminal does not need to add the second clientterminal as the contact firstly and then select the friend from allcontacts, the operations performed by the first client terminal thatinitiates the group chat are simplified, it is much convenient for thefirst client terminal to establish the chat group, and experiences ofthe user are improved.

The invitation message to join the chat group may include the identifierof the first client terminal and an instruction of inputting theidentifier of the chat group via the second client terminal, so as toprovide the second client terminal with the identifier of the user offirst client terminal and instruct the second client terminal to obtainauthentication information when the second client terminal request tojoin the chat group.

Correspondingly, the second client terminal may display for the userthat there is a chat group established by the first client terminal.When the user wants to join the chat group, the second client terminalrequests the user to input the identifier of the chat group.

In another embodiment, the invitation message to join the chat group mayinclude the identifier of the chat group and an instruction of inputtingthe identifier of the first client terminal via the second clientterminal, so as to provide the second client terminal with theidentifier of the chat group and instruct the second client terminal toobtain authentication information when the second client terminalrequest to join the chat group.

Correspondingly, the second client terminal may display the identifierof the chat group. When the user wants to join the chat group, thesecond client terminal requests the user to input the identifier of thefirst client terminal.

In block 105, the server receives authentication information input bythe user of the second client terminal via the second client terminal.

In embodiments of the present invention, the second client terminalreceives the authentication information input by the user and sends theauthentication information to the server.

In block 106, the server performs authentication; if the authenticationis successful, allows access of the second user to the chat group; andsends information of the second user to the first client terminal.

When the second client terminal is requested to input the identifier ofthe chat group in block 104, the server determines whether theauthentication information is identical with the identifier of the chatgroup, and when the authentication information is identical with theidentifier of the chat group, the authentication is successful.

When the second client terminal is requested to input the identifier ofthe first client terminal in block 104, the server determines whetherthe authentication information is identical with the identifier of thefirst client terminal, and when the authentication information isidentical with the identifier of the first client terminal, theauthentication is successful.

In block 107, the server finishes establishing the chat group when apreset finish condition is met.

In embodiments of the present invention, the preset finish conditionincludes a finish request sent from the first client terminal isreceived; or a procedure of establishing the chat group reaches a presetlength of time; or the number of the group members reaches a presetmaximum.

Thus, the chat group is established finally, and users joining the chatgroup may communicate with each other in this chat group.

In an example of the present invention, after being established, thechat group established based on geographic information may automaticallybecome a normal chat group, e.g. the first client terminal may selectone of the contacts to join the chat group.

FIG. 2 is a schematic diagram illustrating a structure of a system forestablishing a chat group according to an embodiment of the presentinvention. In the embodiment, user A, user B, user C . . . and user Gget together and they need to form a chat group of the WeChatapplication via client terminal A, client terminal B, client terminal C. . . and client terminal G respectively. The procedure of establishingthe chat group will be described herein with reference to FIG. 3.

FIG. 3 is a schematic flowchart illustrating a method for establishing achat group according to another embodiment of the present invention. Asshown in FIG. 3, the method includes the following blocks.

In block 301, user A initiates a chat group via client terminal A andclient terminal A sends a request for establishing a chat group to aserver.

In this embodiment, user A may firstly request to obtain information ofclient terminals located around via client terminal A, and a geographicposition of client terminal A is also obtained from the server. Inpractical applications, the geographic position of client terminal A maybe obtained by using other modes which is not limited in the presentinvention.

When user A initiates the chat group in this block, the user isrequested to input an identifier of the chat group via an interface 400of client terminal A. As shown in FIG. 4, the user is requested to input4 digits as the identifier of the chat group, which may be regarded asthe password of the chat group. In this block, the user A input “1013”via client terminal A.

In this way, the request for establishing a chat group sent by clientterminal A includes the identifier of the first client terminal, theidentifier of the chat group to be established and the geographicposition of the first terminal.

In block 302, according to the request for establishing the chat group,the server obtains the identifier of the first client terminal, theidentifier of the chat group to be established and the geographicposition of the first terminal, establishes a chat group entry andstores the chat group entry.

In this embodiment, the server directly obtains the identifier of thefirst client terminal, the identifier of the chat group to beestablished and the geographic position of the first terminal from therequest for establishing a chat group.

When the server establishes the chat group entry, client terminal A isadded to the chat group, and information of current chat group may besent to client terminal A. As shown in FIG. 5, an interface 500 ofclient terminal A displays information of the current chat group foruser A, which indicates that a chat group is began to be established anduser A is current group member.

In block 303, the server selects second client terminals, andautomatically sends an invitation message to join the chat group to thesecond client terminal. The invitation message includes the identifierof user A and an instruction of inputting the identifier of the chatgroup via the second client terminal.

In this embodiment, the server selects the client terminal as the secondclient terminal when the distance between the client terminal and thefirst client terminal is shorter than the 15 m and the client terminalrequests to obtain information of client terminals located around, sothat it is more purposeful when the server invites users to join thechat group and the work load of the server is reduced.

Because users from user A to user G get together, the geographypositions of the client terminals are also not far away from each other.That is, the distance between client terminal A and each of clientterminal B˜G is short than 15 m.

Further, when each of client terminal B˜G requests to obtain informationof client terminals located around, the client terminal is selected asthe second client terminal, and the identifier of user A is sent to theclient terminal.

For example, after user B of client terminal B requests to obtaininformation of client terminals located around, the server provides theinformation of client terminals located around as a conventionaloperation, and in the embodiments of the present invention, the serveralso provides the identifier of user A. As shown in FIG. 6, clientterminal B indicates that there is a chat group initiated by user Awhile the identifier of the chat group is undisclosed. Further, as shownin FIG. 6, the chat groups established by users located around aredisplayed at the top, and an icon is added behind the identifier of theuser, so as to facilitate users to find out the chat group.

In block 304, each of client terminals B˜G requests users B˜G to inputauthentication information when each of users B˜G wants to join the chatgroup.

As one of the second client terminals in this embodiment, clientterminal B is taken as an example.

When user B wants to join the chat group, user B may click the positionof the chat group on an interface 600 of client terminal B as shown inFIG. 6, and then client terminal B requests to join the chat group viasending a request message. The server obtains authentication informationfrom client terminal B. As shown in FIG. 7, client terminal B requestsuser B to input authentication information via an interface 700, theauthentication information is the identifier of the chat group in thisembodiment.

Because the users get together, it is quite easy for the users of thesecond client terminals to obtain the identifier of the chat group. Forexample, after initiating the chat group, user A may orally inform usersB˜G the identifier of the chat group, i.e. the password of the chatgroup is “1013”.

In this embodiment, because the digits are easy to input via the mobileterminal, it is more convenient for the user if the chat group isidentified via digits. In addition, if the chat group is merelyestablished for multiple friends that are together, other users exceptthe multiple friends will not interested in the chat group even theidentifier of the chat group is provided.

In block 305, each of client terminals B˜G receives the authenticationinformation input by each of users B˜G respectively, and sends theauthentication information to the server.

In this block, users B˜G input “1013” as the authentication information.

In block 306, the server performs authentication, determines whether theauthentication information from each of client terminals B˜G isidentical with the identifier of the chat group. If the authenticationinformation from each of client terminals B˜G is identical with theidentifier of the chat group, the server adds each of client terminalsB˜G into the chat group.

In this embodiment, after adding each of client terminals B˜G into thechat group, the server may also send information of each of clientterminals B˜G to client terminal A, so that client terminal A maydisplay the information of each of client terminals B˜G. As shown inFIG. 8, an interface 800 indicates that users B and C have joined thechat group. User A that initiating the chat group will know the currentgroup members of the chat group, so as to control the establishing ofthe chat group. For example, if the group member currently added is notone of users B˜G, the group member currently added may be removed fromthe chat group by user A.

Further, the server may also send information of user A and informationof other group members to the second client terminal. For example,profiles and nick names of user A and users B˜F may be sent to clientterminal G, so that the user of the second client terminal is able toview the group members directly.

In block 307, the server finishes establishing of the chat group whenclient terminals B˜G have added into the chat group.

In the embodiment, the information of each of client terminals B˜G issent to user A in block 306, so that client terminal A may send thefinish request to the server after user A clicks a finish button, i.e.when all friends around user A have added into the chat group.

In this way, the operations performed by user A that initiates the groupchat are simplified, user A does not need to add each of users B˜G asthe contact firstly and then select users B˜G from all contactsrespectively. Instead, user A sends the request for establishing thechat group and sends the finish request when all users B˜G have addedinto the chat group. It is much convenient for user A to establish thechat group.

In addition, if the finish request is not received for a preset lengthof time, i.e. 60 s, the server directly finishes establishing the chatgroup, and returns prompt information to the first client terminal; ifthe number of the group members reaches a preset maximum, i.e. 20, theserver directly finishes establishing the chat group, and returns promptinformation to the first client terminal.

In embodiments of the present invention, after the chat group isestablished, in the chat group, one of the group members may add othergroup members as contact.

As can be seen, according to the embodiments of the present invention,the first client terminal does not need to add the friend as the contactfirstly and then select the friend from all contacts. Instead, the firstclient terminal sends the request for establishing the chat group, morethan one second client terminals in the predetermined geographic scopearound the location of the first client may join the chat group, nomatter whether the second client is one of contacts of the first client.The operations performed by the first client terminal that initiates thegroup chat are simplified, it is much convenient for the first clientterminal to establish the chat group, and experiences of the user areimproved.

FIG. 9 is a schematic diagram illustrating an apparatus for establishinga chat group according to an embodiment of the present invention.

As shown in FIG. 9, the apparatus includes: an interface and aprocessor. The processor includes an obtaining module, an establishingmodule, a selecting module, an adding module and a finishing module.

The interface is to receive a request for establishing a chat group sentby a first client terminal. The request for establishing the chat groupincludes an identifier of a user of the first client terminal, anidentifier of a chat group to be established.

The obtaining module is to obtain the identifier of the user of thefirst client terminal, the identifier of a chat group to be establishedand a geographic position of the first terminal, according to therequest for establishing the chat group. When the geographic position ofthe first terminal is included in the request for establishing the chatgroup, the obtaining module is to directly obtain the geographicposition of the first terminal from the request for establishing a chatgroup; when the geographic position of the first terminal is notincluded in the request for establishing the chat group, the obtainingmodule is to obtain the geographic position of the first terminal bylocating the first client terminal.

The establishing module is to establish a chat group entry according tothe identifier of the user of the first client terminal, the identifierof a chat group to be established and a geographic position of the firstterminal, store the chat group entry, add the first client terminal tothe chat group.

The selecting module is to selects at least one second client terminalswithin a predetermined geographic scope.

Specifically, the selecting module is to search for client terminalsaround the first client terminal; and select the client terminal as thesecond client terminal when the distance between the client terminal andthe first client terminal is shorter than a preset value. Or theselecting module is to search for client terminals around the firstclient terminal; determine whether the client terminals around the firstclient terminal request to obtain information of other client terminallocated around, and selecting the client terminal as the second clientterminal when the distance between the client terminal and the firstclient terminal is shorter than the preset value and the client terminalrequests to obtain information of other client terminal located around.

After the chat group entry is established by the establishing module ofthe processor, the interface is to send automatically an invitationmessage to join the chat group to the at least one second clientterminal. Specifically, the invitation message to join the chat groupcomprises: the identifier of the first client terminal and aninstruction of inputting the identifier of the chat group via the secondclient terminal; or the invitation message to join the chat groupcomprises: the identifier of the chat group and an instruction ofinputting the identifier of the first client terminal via the secondclient terminal.

The interface is to receive authentication information input by the userof the second client terminal from the second client terminal.

The adding module is to perform authentication; if the authenticationinformation is successful, add the user of the second client terminalinto the chat group. Specifically, when the invitation message to jointhe chat group includes the identifier of the first client terminal, theadding module is to determine whether the authentication information isidentical with the identifier of the chat group; when the invitationmessage to join the chat group includes the identifier of the chatgroup, the adding module is to determine whether the authenticationinformation is identical with the identifier of the first clientterminal.

After adding the second client terminal into the chat group, theinterface of the processor is further to send information of the secondclient terminal to the first client terminal.

The finishing module is to finish establishing the chat group when apreset condition is met. The preset condition includes that a finishrequest sent from the first client terminal is received; or a procedureof establishing the chat group reaches a preset length of time; or thenumber of the group members reaches a preset maximum.

In addition, the interface of the processor is further to sendinformation of the first client terminal and information of other groupmembers to the second client terminal.

As can be seen, according to the embodiments of the present invention,the first client terminal does not need to add the friend as the contactfirstly and then select the friend from all contacts. Instead, the firstclient terminal sends the request for establishing the chat group, morethan one second client terminals in the predetermined geographic scopearound the location of the first client may join the chat group, nomatter whether the second client is one of contacts of the first client.The operations performed by the first client terminal that initiates thegroup chat are simplified, it is much convenient for the first clientterminal to establish the chat group, and experiences of the user areimproved.

The methods and modules described herein may be implemented by hardware,machine-readable instructions or a combination of hardware andmachine-readable instructions. Machine-readable instructions used in theexamples disclosed herein may be stored in storage medium readable bymultiple processors, such as hard drive, CD-ROM, DVD, compact disk,floppy disk, magnetic tape drive, RAM, ROM or other proper storagedevice. Or, at least part of the machine-readable instructions may besubstituted by specific-purpose hardware, such as custom integratedcircuits, gate array, FPGA, PLD and specific-purpose computers and soon.

A machine-readable storage medium is also provided, which is to storeinstructions to cause a machine to execute a method as described herein.Specifically, a system or apparatus having a storage medium that storesmachine-readable program codes for implementing functions of any of theabove examples and that may make the system or the apparatus (or CPU orMPU) read and execute the program codes stored in the storage medium.

In this situation, the program codes read from the storage medium mayimplement any one of the above examples, thus the program codes and thestorage medium storing the program codes are part of the technicalscheme.

The storage medium for providing the program codes may include floppydisk, hard drive, magneto-optical disk, compact disk (such as CD-ROM,CD-R, CD-RW, DVD-ROM, DVD-RAM, DVD-RW, DVD+RW), magnetic tape drive,Flash card, ROM and so on. Optionally, the program code may bedownloaded from a server computer via a communication network.

It should be noted that, alternatively to the program codes beingexecuted by a computer, at least part of the operations performed by theprogram codes may be implemented by an operation system running in acomputer following instructions based on the program codes to realize atechnical scheme of any of the above examples.

In addition, the program codes implemented from a storage medium arewritten in storage in an extension board inserted in the computer or instorage in an extension unit connected to the computer. In this example,a CPU in the extension board or the extension unit executes at leastpart of the operations according to the instructions based on theprogram codes to realize a technical scheme of any of the aboveexamples.

The foregoing is only preferred examples of the present invention and isnot used to limit the protection scope of the present invention. Anymodification, equivalent substitution and improvement without departingfrom the spirit and principle of the present invention are within theprotection scope of the present invention.

1. A method for establishing a chat group, comprising: at a server of asocial networking platform, the server having one or more processors andmemory: receiving, from a first client terminal that corresponds to afirst user on the social network platform, a request for establishing achat group, without receiving an identifier of an existing socialnetwork contact of the first user on the social networking platform; inresponse to receiving the request to establish the chat group:initiating a process to establish a first chat group including the firstuser, including: creating a respective group chat entry for the firstchat group; and monitoring incoming requests for additional users tojoin the first chat group; while monitoring the incoming requests foradditional users to join the first chat group, detecting a request froma second client terminal corresponding to a second user of the socialnetwork platform to obtain information of other client terminals locatedaround the second client terminal; in accordance with the request fromthe second client terminal and in accordance with a determination thatthe second client terminal and the first client terminal are locatedwithin a preset distance, sending a request to the second clientterminal to enter authentication information corresponding to the firstchat group; receiving the authentication information from the secondclient terminal, wherein the authentication information is obtained bythe second user independently of the server of the social networkplatform; and in accordance with a determination that the authenticationinformation is correct, establishing the first chat group including thefirst user and the second user.
 2. The method of claim 1, wherein therequest for establishing the chat group includes a passcode, and whereinthe server stores the respective group chat entry for the first chatgroup with a group identifier identical to the passcode.
 3. The methodof claim 2, wherein the server uses the passcode as the authenticationinformation for joining the first chat group.
 4. The method of claim 1,further including: while monitoring the incoming requests for additionalusers to join the first chat group, detecting a request from the firstclient terminal to close the first chat group; and in response todetecting the request from the first client terminal to close the firstchat group, completing the process for establishing the first groupchat, including: ceasing to allow additional users to join the firstchat group based on a current location of first client terminal; andallowing additional users to join the first chat group by first becomingsocial network contacts of the first user on the social networkingplatform.
 5. The method of claim 4, wherein the first chat groupincludes at least a first member that is added to the first chat groupafter the first member became a social network contact of the firstuser, and includes at least a second member that is added to the firstchat group before the second member became a social network contact ofthe first user.
 6. The method of claim 1, wherein determining that theauthentication is correct includes determining that the authenticationinformation received from the second client terminal is identical to anidentifier of the first group chat entry stored at the server.
 7. Themethod of claim 6, wherein the identifier of the first group chat entryis included in the request for establishing the group chat that isreceived from the first client terminal.
 8. A server of a social networkplatform, comprising: one or more processors; and memory storinginstructions, the instructions, when executed by the one or moreprocessors, cause the processors to perform operations comprising:receiving, from a first client terminal that corresponds to a first useron the social network platform, a request for establishing a chat group,without receiving an identifier of an existing social network contact ofthe first user on the social networking platform; in response toreceiving the request to establish the chat group: initiating a processto establish a first chat group including the first user, including:creating a respective group chat entry for the first chat group; andmonitoring incoming requests for additional users to join the first chatgroup; while monitoring the incoming requests for additional users tojoin the first chat group, detecting a request from a second clientterminal corresponding to a second user of the social network platformto obtain information of other client terminals located around thesecond client terminal; in accordance with the request from the secondclient terminal and in accordance with a determination that the secondclient terminal and the first client terminal are located within apreset distance, sending a request to the second client terminal toenter authentication information corresponding to the first chat group;receiving the authentication information from the second clientterminal, wherein the authentication information is obtained by thesecond user independently of the server of the social network platform;and in accordance with a determination that the authenticationinformation is correct, establishing the first chat group including thefirst user and the second user.
 9. The server of claim 8, wherein therequest for establishing the chat group includes a passcode, and whereinthe server stores the respective group chat entry for the first chatgroup with a group identifier identical to the passcode.
 10. The serverof claim 9, wherein the server uses the passcode as the authenticationinformation for joining the first chat group.
 11. The server of claim 8,wherein the operations further include: while monitoring the incomingrequests for additional users to join the first chat group, detecting arequest from the first client terminal to close the first chat group;and in response to detecting the request from the first client terminalto close the first chat group, completing the process for establishingthe first group chat, including: ceasing to allow additional users tojoin the first chat group based on a current location of first clientterminal; and allowing additional users to join the first chat group byfirst becoming social network contacts of the first user on the socialnetworking platform.
 12. The server of claim 11, wherein the first chatgroup includes at least a first member that is added to the first chatgroup after the first member became a social network contact of thefirst user, and includes at least a second member that is added to thefirst chat group before the second member became a social networkcontact of the first user.
 13. The server of claim 8, whereindetermining that the authentication is correct includes determining thatthe authentication information received from the second client terminalis identical to an identifier of the first group chat entry stored atthe server.
 14. The server of claim 13, wherein the identifier of thefirst group chat entry is included in the request for establishing thegroup chat that is received from the first client terminal.
 15. Anon-transitory computer-readable storage medium storing instructions,the instructions, when executed by one or more processors, cause theprocessors to perform operations comprising: at a server of a socialnetworking platform: receiving, from a first client terminal thatcorresponds to a first user on the social network platform, a requestfor establishing a chat group, without receiving an identifier of anexisting social network contact of the first user on the socialnetworking platform; in response to receiving the request to establishthe chat group: initiating a process to establish a first chat groupincluding the first user, including: creating a respective group chatentry for the first chat group; and monitoring incoming requests foradditional users to join the first chat group; while monitoring theincoming requests for additional users to join the first chat group,detecting a request from a second client terminal corresponding to asecond user of the social network platform to obtain information ofother client terminals located around the second client terminal; inaccordance with the request from the second client terminal and inaccordance with a determination that the second client terminal and thefirst client terminal are located within a preset distance, sending arequest to the second client terminal to enter authenticationinformation corresponding to the first chat group; receiving theauthentication information from the second client terminal, wherein theauthentication information is obtained by the second user independentlyof the server of the social network platform; and in accordance with adetermination that the authentication information is correct,establishing the first chat group including the first user and thesecond user.
 16. The computer-readable storage medium of claim 15,wherein the request for establishing the chat group includes a passcode,and wherein the server stores the respective group chat entry for thefirst chat group with a group identifier identical to the passcode. 17.The computer-readable storage medium of claim 16, wherein the serveruses the passcode as the authentication information for joining thefirst chat group.
 18. The computer-readable storage medium of claim 15,wherein the operations further include: while monitoring the incomingrequests for additional users to join the first chat group, detecting arequest from the first client terminal to close the first chat group;and in response to detecting the request from the first client terminalto close the first chat group, completing the process for establishingthe first group chat, including: ceasing to allow additional users tojoin the first chat group based on a current location of first clientterminal; and allowing additional users to join the first chat group byfirst becoming social network contacts of the first user on the socialnetworking platform.
 19. The computer-readable storage medium of claim18, wherein the first chat group includes at least a first member thatis added to the first chat group after the first member became a socialnetwork contact of the first user, and includes at least a second memberthat is added to the first chat group before the second member became asocial network contact of the first user.
 20. The computer-readablestorage medium of claim 15, wherein determining that the authenticationis correct includes determining that the authentication informationreceived from the second client terminal is identical to an identifierof the first group chat entry stored at the server.